import store from '../store';
import Type from '../utils/Type';

export default {
  // 1. 从仓库里面取出权限值
  // 2. 获取自定义指令的传递到值
  // 3. 判断自定义指令的规范性 如果不规范 抛出错误
  // 4. 判断自定义指令有没有权限 没有 : 删除dom
  mounted(el, binding, vNode) {

    // if (binding.value === 'admin') {
    //
    // } else {
    //   el.parentNode && el.parentNode.removeChild(el);
    // }

    let storageRoles = store.state.roles;
    let {value} = binding;
    if (value && Type.isArray(value) && value.length > 0) {
      let index = value.findIndex(item => storageRoles === item);
      if (index === -1) {
        el.parentNode && el.parentNode.removeChild(el);
      }
    } else {
      throw new Error('need roles ! Like v-permision=["admin"]')
    }


    // 权限存在哪?
    // vuex
    // 获取权限
    // 对比 有 显示 没有 删除
    // 没按照规范 抛出一个错误

  }
}
